Xiaomi Mi 4i (xiaomi-ferrari)
Appearance
	
	
| This page is about the dedicated port of this device. There is also an optional generic port available for this device - see Generic MSM8916 (qcom-msm8916). | 
| This device runs a Downstream kernel. Some UIs will not work, and most features (3D acceleration, audio, etc.) may be broken. | 
| 
 Mi 4i running Phosh with (close-to-mainline) kernel  | |
| Manufacturer | Xiaomi | 
|---|---|
| Name | Mi 4i | 
| Codename | xiaomi-ferrari | 
| Released | 2015 | 
| Type | handset | 
| Hardware | |
| Chipset | Qualcomm Snapdragon 615 (MSM8939) | 
| CPU | 
Octa-core (4x1.7 GHz Cortex-A53  4x1.0 GHz Cortex-A53)  | 
| GPU | Adreno 405 | 
| Display | 1080 x 1920 IPS LCD | 
| Storage | 16/32 GB eMMC 4.5 | 
| Memory | 2 GB | 
| Architecture | aarch64 | 
| Software | |
Original software The software and version the device was shipped with.  | 
    Android (MIUI) 5.0.2 | 
Extended version The most recent supported version from the manufacturer.  | 
    Android (MIUI) | 
| postmarketOS | |
| Category | downstream | 
Mainline Instead of a Linux kernel fork, it is possible to run (Close to) Mainline.  | 
    no | 
pmOS kernel The kernel version that runs on the device's port.  | 
    3.10.104 | 
Unixbench score Unixbench Whetstone/Dhrystone score. See Unixbench.  | 
    2246.4 | 
| Optional Generic Port | Generic MSM8916 (qcom-msm8916) | 
| Device package | 
 | 
| Kernel package | 
 | 
Flashing Whether it is possible to flash the device with  pmbootstrap flasher. | 
    
 Works 
 | 
|---|---|
USB Networking After connecting the device with USB to your PC, you can connect to it via telnet (initramfs) or SSH (booted system).  | 
    
 Works 
 | 
Battery Whether charging and battery level reporting work.  | 
    
 Untested 
 | 
Screen Whether the display works; ideally with sleep mode and brightness control.  | 
    
 Works 
 | 
Touchscreen  | 
    
 Works 
 | 
| Multimedia | |
3D Acceleration  | 
    
 Works 
 | 
Audio Audio playback, microphone, headset and buttons.  | 
    
 Untested 
 | 
Camera  | 
    
 Untested 
 | 
| Connectivity | |
WiFi  | 
    
 Works 
 | 
Bluetooth  | 
    
 Untested 
 | 
GPS  | 
    
 Untested 
 | 
| Modem | |
Calls  | 
    
 Untested 
 | 
SMS  | 
    
 Untested 
 | 
Mobile data  | 
    
 Untested 
 | 
| Miscellaneous | |
FDE Full disk encryption and unlocking with unl0kr.  | 
    
 Untested 
 | 
| Sensors | |
Accelerometer Handles automatic screen rotation in many interfaces.  | 
    
 Untested 
 | 
| This device is based on the Snapdragon 615. See the SoC page for common tips, guides and troubleshooting steps  | 
Contributors
Maintainer(s)
Users owning this device
- JuniorJPDJ (Notes: half broken touch)
 - Sungold (Notes: No longer with me, dead speakers and display, stopped mainline development)
 - TQMatvey (Notes: half broken touchscreen)
 
How to enter flash mode
Recovery mode
- Turn the device off (or restart also works)
 - Hold and button
 - Once you feel vibration and phone turns on, release button
 - Keep holding until you get to recovery.
 
Flashing (Download, Fastboot) mode
- Same as recovery, but this time hold the and keys.
 
Installation
- Install pmbootstrap first on your PC
 - zap & reinit pmbootstrap (
pmbootstrap -y zap ; pmbootstrap init), choosexiaomi-libraas device - proceed with installation as usual: reboot device to fastboot mode, then:
 
pmbootstrap install pmbootstrap flasher flash_kernel pmbootstrap flasher flash_rootfs
See also
- pmaports!1207 Initial merge request
 - Mainline Repo